﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Text;
using AdmBase;
using Guedes_Library;

public partial class admin_pages_produto_Novo : TelaBase
{

    private ProdutoBusiness business;

    private ProdutoGrupoBusiness pGBusiness;

    public ProdutoGrupoBusiness PGBusiness
    {
        get {
            if (pGBusiness == null)
                pGBusiness = new ProdutoGrupoBusiness();
            return pGBusiness; }
        set { pGBusiness = value; }
    }

    public ProdutoBusiness Business
    {
        get {
            if (business == null)
                business = new ProdutoBusiness();
            return business; }
        set { business = value; }
    }


    protected void Page_Load(object sender, EventArgs e)
    {
        IsLogado();
        File = fileUpload;
        string id = Request.QueryString["id"];
        string categoria = Request.QueryString["categoria"];
        if (!IsPostBack)
            carregaCombo();

        if (id != null && !IsPostBack)
        {
            byproduct p = Business.GetById(int.Parse(id));
            if (p == null)
                Response.Redirect("~/admin/pages/produto/Default.aspx");
            cbCategoria.SelectedValue = p.ID_Prod.ToString();
            carregaAlterar(p);
        }

        if(id == null && categoria != null)
            cbCategoria.SelectedValue = categoria;
    }


    public void carregaAlterar(byproduct p)
    {
        cbCategoria.SelectedValue = p.ID_Prod.ToString();
        txtNome.Text = p.Name;
        hdId.Value = p.ID.ToString();
        hdFoto.Value = p.Img;
        img.ImageUrl = ResolveClientUrl("~/File/thumb/"+p.Img);

    }

    public void carregaCombo()
    {
        List<product> lista = PGBusiness.getAll();
        cbCategoria.DataValueField = "ID";
        cbCategoria.DataTextField = "Name";
        cbCategoria.DataSource = lista;
        DataBind();
    }


    protected void Salvar(object sender, EventArgs e)
    {
        byproduct p = new byproduct();

        if (hdId.Value != "")
            p.ID = int.Parse(hdId.Value);
        p.ID_Prod = int.Parse(cbCategoria.SelectedValue);
        p.Name = txtNome.Text;
        p.Img = hdFoto.Value;
        p.Thumb = hdFoto.Value;

        Retorno retorno = Business.Salvar(p);
        if (!retorno.Error)
            Limpar();
        ShowMensagem("Atenção", retorno.Mensagem);
    }


    public void Limpar()
    {
        cbCategoria.SelectedIndex = 0;
        txtNome.Text = String.Empty;
        hdId.Value = String.Empty;
        img.ImageUrl = "~/admin/Images/pimenta.png";
    }

    public override void DoReturnPage()
    {
        StringBuilder sb = new StringBuilder();

        sb.Append("top.$get(\""+img.ClientID + "\").src = '" + ResolveClientUrl("~/File/thumb/"+UrlArquivo) + "';");
        sb.Append("top.$get(\"" + hdFoto.ClientID +"\").value = '"+ UrlArquivo + "';");
        ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "size",sb.ToString() , true);
    }
}